home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / lang / c++-part1 / 5681 < prev    next >
Encoding:
Internet Message Format  |  1996-08-05  |  7.5 KB

  1. Path: magnus.acs.ohio-state.edu!csn!ub!newserve!rebecca!rpi!not-for-mail
  2. From: smeyers@netcom.com (Scott Meyers)
  3. Newsgroups: comp.lang.c++,comp.lang.c++.moderated
  4. Subject: More Effective C++
  5. Date: 5 Feb 1996 17:36:30 -0000
  6. Organization: NETCOM On-line Communication Services (408 261-4700 guest)
  7. Sender: cppmods@netlab.cs.rpi.edu
  8. Approved: Dietmar.Kuehl@uni-konstanz.de
  9. Message-ID: <4f5f6u$bhe@netlab.cs.rpi.edu>
  10. NNTP-Posting-Host: netlab.cs.rpi.edu
  11. X-Original-Date: Mon, 5 Feb 1996 17:17:54 GMT
  12.  
  13. This posting announces the introduction of my new book, "More Effective
  14. C++: 35 New Ways to Improve Your Programs and Designs." The first part
  15. of the posting gives some information about the book itself, the second
  16. part explains how you can win an autographed copy.  If you want to skip
  17. the propaganda and jump straight to how you can win a copy, search for
  18. "WINNING AN AUTOGRAPHED COPY" now.
  19.  
  20. THE BOOK
  21.  
  22. Vital Statistics:
  23.  
  24.   More Effective C++: 35 New Ways to Improve Your Programs and Designs
  25.   by Scott Meyers
  26.   Addison-Wesley Professional Computing Series
  27.   ISBN 0-201-63371-X * Paperback * 336 pages * 1996
  28.   About US$30 
  29.  
  30. More Effective C++ complements the material in my other C++ book,
  31. "Effective C++," but More Effective C++ is not a second edition of
  32. Effective C++, and you don't need to have read Effective C++ to
  33. understand More Effective C++.  The two books cover independent
  34. material, and Effective C++ will continue to be available. 
  35.  
  36. What does More Effective C++ cover?  I put it this way in the book's
  37. Introduction:
  38.  
  39.   The material in this book is divided into 35 Items. Each Item summarizes
  40.   the accumulated wisdom of the C++ programming community on a particular
  41.   topic. Most Items take the form of guidelines, and the explanation
  42.   accompanying each guideline describes why the guideline exists, what
  43.   happens if you fail to follow it, and under what conditions it may make
  44.   sense to violate the guideline anyway. 
  45.   
  46.   Items fall into several categories. Some concern particular language
  47.   features, especially newer features with which you may have little
  48.   experience. For example, Items 9 through 15 are devoted to exceptions.
  49.   Other Items explain how to combine the features of the language to
  50.   achieve higher-level goals. Items 25 through 31, for instance, describe
  51.   how to constrain the number or placement of objects, how to create
  52.   functions that act "virtual" on the type of more than one object, how to
  53.   create "smart pointers," and more. Still other Items address broader
  54.   topics; Items 16 through 24 focus on efficiency. No matter what the
  55.   topic of a particular Item, each takes a no-nonsense approach to the
  56.   subject. In More Effective C++, you learn how to *use* C++ more
  57.   effectively. The descriptions of language features that make up the bulk
  58.   of most C++ texts are in this book mere background information. 
  59.  
  60. Here is the table of contents for More Effective C++:
  61.  
  62.   Acknowledgments
  63.   Introduction
  64.   Basics       [4 Items]
  65.   Operators    [4 Items]
  66.   Exceptions   [7 Items]
  67.   Efficiency   [9 Items]
  68.   Techniques   [7 Items]
  69.   Miscellany   [4 Items]
  70.   Recommended Reading
  71.   An auto_ptr Implementation
  72.   General Index
  73.   Index of Example Classes, Functions, and Templates
  74.  
  75. For more information, point your WWW browser to
  76. http://www.aw.com/cp/mec++.html.  There you'll find a detailed table of
  77. contents and the complete text of the following sections of the book:
  78.   
  79.   Introduction
  80.   Item 5:  Be wary of user-defined conversion functions
  81.   Item 9:  Use destructors to prevent resource leaks
  82.   Item 10: Prevent resource leaks in constructors
  83.   Item 33: Make non-leaf classes abstract
  84.   Recommended Reading
  85.   An auto_ptr Implementation
  86.  
  87. You'll also find a photo of the cover of the book, the descriptive
  88. information from the back of the book, my photo and bio, etc.  And of
  89. course you'll find information on how you can order the book if you
  90. can't wait for it to appear at your local bookstore :-).  (If it's not
  91. there already, it should appear soon, at least in the United States.)
  92.  
  93. If you don't have a WWW browser, you can get the same information via
  94. anonymous FTP from ftp.aw.com in the directory cp/mec++.
  95.  
  96.  
  97. WINNING AN AUTOGRAPHED COPY
  98.  
  99. Much of what I know about C++ I learned from the Usenix C++ newsgroups,
  100. and Addison-Wesley (my publisher) and I want to express our thanks to
  101. the participants of those newsgroups by giving away some autographed
  102. copies of More Effective C++.  My original plan was to offer a free book
  103. to the first person from each country who wrote me asking for one, but
  104. there are a lot of countries in the world, and though the folks at
  105. Addison-Wesley are generous, they're not that generous.  Besides, I have
  106. to pay for postage myself when I mail the books out :-). 
  107.  
  108. I've therefore decided to give a free autographed copy of More Effective
  109. C++ to the first person from each time zone who writes asking for one.
  110. More specifically:
  111.   - I'll send an autographed copy of More Effective C++ to the first
  112.     person from each of the world's time zones who sends me A LETTER
  113.     asking for one.  ELECTRONIC MAIL DOES NOT COUNT.  I'll judge
  114.     who's first by looking at postmarks.  In case of ties, I'll choose
  115.     a winner at random or I'll send out multiple copies of the book
  116.     (see below).
  117.   - When I say "time zone," I don't really mean "time zone," because real
  118.     time zones are too complicated.  Instead, I'll divide the world into
  119.     24 15-degree slices of longitude, and each such slice is, by
  120.     my definition, a time zone.  That's how I'll figure out who's in
  121.     which time zone.  To determine the time zone you're in, I'll look
  122.     at the address you ask me to send the book to. 
  123.   - In cases of ambiguity, inconsistency, or any other way in which the
  124.     rules above may be lacking, I will make a decision which is
  125.     arbitrary, capricious, and final :-).
  126.  
  127. In short, if you want a shot at a free book, immediately send me a
  128. letter at the address at the end of this posting.  The sooner you get
  129. your letter in the mail, the better your chances of winning a book.  DO
  130. NOT SEND ELECTRONIC MAIL.  DO NOT SEND FAXES.  DO NOT MAKE PHONE CALLS.
  131. Just put pen/pencil/crayon/printer/whatever to paper and send me a letter.
  132.  
  133. As fate would have it, Addison-Wesley will donate 30 books for this
  134. venture.  Since there are only 24 time zones, that means I have 6 books
  135. to play with.  I reserve the right to give them to anybody I feel like.
  136. You can improve your chances of my feeling like giving you one by making
  137. a compelling case in your letter.  You already have a head start if you
  138. come from a country that didn't exist in 1990, because I have a soft
  139. spot for new countries.  You also have a head start if you live in
  140. Madagascar, because I have a soft spot for lemurs.  Ditto for
  141. Antarctica, because I have a soft spot for Emperor Penguins.  Admitting
  142. that you work for Microsoft will reduce your chances considerably, even
  143. if you live in Madagascar, commute to Antarctica, and nurse injured
  144. lemurs and penguins back to health :-).
  145.  
  146. Good luck.  I look forward to hearing from you, and I hope you like
  147. More Effective C++.
  148.  
  149. Scott
  150.  
  151. ----------------------------------------------------------------------------
  152. Scott Meyers, Ph.D.                                Email: smeyers@netcom.com
  153. Software Development Consultant                    Voice: 503/638-6028
  154. 3051 SW Turner Road                                Fax:   503/638-6614
  155. West Linn, OR  97068
  156.  
  157.  
  158.       [ Articles to moderate: mailto:c++-submit@netlab.cs.rpi.edu ]
  159.       [  Read the C++ FAQ: http://www.connobj.com/cpp/cppfaq.htm  ]
  160.       [  Moderation policy: http://www.connobj.com/cpp/guide.htm  ]
  161.       [      Comments? mailto:c++-request@netlab.cs.rpi.edu       ]
  162.